9e47bd618186d372016b093389a0998ff8f71316,source/com/intellij/openapi/editor/actions/ToggleCaseAction.java,Handler,executeWriteAction,#Editor#DataContext#,23
Before Change
toCase(builder, text, false);
}
editor.getDocument().replaceString(startOffset, endOffset, builder.toString());
editor.getSelectionModel().setSelection(startOffset, endOffset);
}
finally {
StringBuilderSpinAllocator.dispose(builder);
After Change
private static class Handler extends EditorWriteActionHandler {
public void executeWriteAction(Editor editor, DataContext dataContext) {
final SelectionModel selectionModel = editor.getSelectionModel();
final int[] starts;
final int[] ends;
LogicalPosition blockStart = null;
LogicalPosition blockEnd = null;
if (selectionModel.hasBlockSelection()) {
starts = selectionModel.getBlockSelectionStarts();
ends = selectionModel.getBlockSelectionEnds();
blockStart = selectionModel.getBlockStart();
blockEnd = selectionModel.getBlockEnd();
}
else {
if (!selectionModel.hasSelection()) {
selectionModel.selectWordAtCaret(true);
}
starts = new int[] {selectionModel.getSelectionStart()};
ends = new int[] {selectionModel.getSelectionEnd()};
}
selectionModel.removeBlockSelection();